package cn.edu.ctbu.datajpa3.service;

import cn.edu.ctbu.datajpa3.entity.Student;
import cn.edu.ctbu.datajpa3.repository.StudentRepository;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Optional;

@Service
public class StudentService {

    private final StudentRepository studentRepository;

    public StudentService(StudentRepository studentRepository) {
        this.studentRepository = studentRepository;
    }

    // 获取所有学生
    public List<Student> findAll() {
        return studentRepository.findAll();
    }

    // 按姓名查询学生
    public List<Student> findByName(String name) {
        return studentRepository.findByNameContaining(name);
    }

    // 根据ID获取学生
    public Student findById(Integer id) {
        Optional<Student> student = studentRepository.findById(id);
        return student.orElse(null); // 如果学生存在，返回学生信息，否则返回null
    }

    // 保存学生信息（添加或更新）
    public void save(Student student) {
        studentRepository.save(student);
    }

    // 删除学生
    public void delete(Integer id) {
        studentRepository.deleteById(id);
    }
}
